Boost.AsioC++의 Boost.Asio는 다양한 플랫폼에서 서버 & 클라이언트 모델을 구현하기 위한 목적으로 사용할 수 있다.
Boost.Asio를 이용하면, 비동기 IO프로그램을 포함해 고성능 네트워크 프로그램을 쉽게 구현할 수 있다.
실제로 파일 전송 시스템 및 게임 서버 구현 목적으로 다수 활용되고 있다.
https://www.boost.org/users/download/
bootstarp.bat 파일 실행후
cmd를 통해 64비트 및 32비트 소프트웨어에 적용할 수 잇는 형태의 라이브러리 빌드 수행
boost_1_76_0으로 이동후
b2 -j4 toolset=msvc-14.1 address-model=64 variant=debug,releaselink=static threading=multi stage
b2 -j4 toolset=msvc-14.1 address-model=64 variant=debug,releaselink=static threading=multi stage
속성-링커-일반-추가 라이브러리 디렉터리
구성속성-VC++디렉터리-포함 디렉터리-(root directory 주소)
#include <iostream>
#include <boost/asio.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
int main(void) {
boost::asio::io_service io;
boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
t.wait();
std::cout << "Hello, world!" << std::endl;
system("pause");
return 0;
}
대부분의 boost asio를 이용할 때는, io_service 객체를 이용
deadline_timer를 이용해서 프로그램을 일시적으로 중지시킬 수 있다.주